想要在應用中有個讓會員間可以互相聊天的功能,自幹起來遠比想像中還要複雜跟細節,就覺得如果能有現成的服務能用就好了。
一開始本來是想嘗試用 Matrix 來達成,但 Matrix 的分散式網路要限定不會被跨區使用似乎會很麻煩,而且沒有現成的內嵌式 UI (有現成的完整 App ,像一個 Slack),必續自建。
看了看 Rocket.chat 有內嵌功能,也能用 SSO 做身份驗證,就來試用看看。
一樣開始部署服務。
下載現成的 docker compose 檔案。
curl -L https://raw.githubusercontent.com/RocketChat/Docker.Official.Image/master/compose.yml -O
然後下載官方環境變數範例檔案下來改。
大部環境變數在 compose 裡面有預設值可以不用定義,改幾個比較主要的就好。
RELEASE=6.12.1
MONGODB_VERSION=4.4
RELEASE
用來鎖定 Rocket.chat 的版本,避免用到 beta 版,這邊用目前的最新穩定版。
MONGODB_VERSION
用 5.0 好像會有環境上的衝突導致一直掛掉,降一下版本。
再來下載官方的桌面程式來開剛剛架起來的服務。
連結用 http://localhost:3000 就可以。
連接上後要先設定管理帳號,信箱要填寫能收信的信箱,要用來收 Workspace 的開通信。
開通後稍等一會就能進到工作區了。